Revert "gtkoverlay: Optimize size allocations"
authorMatthias Clasen <mclasen@redhat.com>
Sat, 22 Aug 2015 15:22:27 +0000 (11:22 -0400)
committerMatthias Clasen <mclasen@redhat.com>
Sat, 22 Aug 2015 19:51:42 +0000 (15:51 -0400)
This reverts commit 93171cf4f346c0a5e71f274d012c3cacfe3880ba.

This broke overlay controls in page 3 of widget-factory, gnome-photos,
gnome-documents, etc.

gtk/gtkoverlay.c

index 7a7d6e1df5a9aa2d08ad2733e8445508ae4c3983..1cac3225a524a05097ad27ad3f5effee4c46fba8 100644 (file)
@@ -295,8 +295,11 @@ gtk_overlay_child_allocate (GtkOverlay      *overlay,
 
   if (gtk_widget_get_mapped (GTK_WIDGET (overlay)))
     {
+      /* Note: This calls show every size allocation, which makes
+       * us keep the z-order of the chilren, as gdk_window_show()
+       * does an implicit raise. */
       if (gtk_widget_get_visible (child->widget))
-        gdk_window_show_unraised (child->window);
+        gdk_window_show (child->window);
       else if (gdk_window_is_visible (child->window))
         gdk_window_hide (child->window);
     }
@@ -580,16 +583,6 @@ gtk_overlay_reorder_overlay (GtkOverlay *overlay,
   if (index == old_index)
     return;
 
-  if (new_link)
-    {
-      GtkOverlayChild *new_child_info = new_link->data;
-      gdk_window_restack (child_info->window, new_child_info->window, TRUE);
-    }
-  else
-    {
-      gdk_window_raise (child_info->window);
-    }
-
   priv->children = g_slist_delete_link (priv->children, old_link);
   priv->children = g_slist_insert_before (priv->children, new_link, child_info);